package org.example.review.service;

import org.example.review.dto.HrRecordDTO;
import org.example.review.dto.UserDTO;

import java.util.List;

public interface HrService {
    List<UserDTO> gethrlist();
    int insertHrRecord(HrRecordDTO hrRecord);
    int updateHr(UserDTO userDTO);
    int deleteHr(UserDTO userDTO);
    int addHr(UserDTO userDTO);
    
    /**
     * 批量删除用户
     * @param userIds 用户ID列表
     * @return 删除的记录数
     */
    int batchDeleteHr(List<Integer> userIds);
    
    /**
     * 批量更新用户信息
     * @param userIds 用户ID列表
     * @param userDTO 包含要更新的字段
     * @return 更新后的用户列表
     */
    List<UserDTO> batchUpdateHr(List<Integer> userIds, UserDTO userDTO);
    
    /**
     * 获取所有人事操作记录
     * @return 操作记录列表
     */
    List<HrRecordDTO> getHrRecordList();
    
    /**
     * 删除单条操作记录
     * @param recordId 记录ID
     * @return 删除的记录数
     */
    int deleteHrRecordById(Integer recordId);
    
    /**
     * 批量删除操作记录
     * @param recordIds 记录ID列表
     * @return 删除的记录数
     */
    int batchDeleteHrRecords(List<Integer> recordIds);
    
    /**
     * 更新操作记录的备注
     * @param recordId 记录ID
     * @param remark 新备注
     * @return 更新的记录数
     */
    int updateHrRecordRemark(Integer recordId, String remark);
}
